package genedit.model.graph.classModel;

import genedit.model.graph.GraphDocument;
import genedit.model.graph.MyRect;
import genedit.model.graph.Property;

import java.awt.Dimension;
import java.awt.geom.Point2D;
import java.util.ArrayList;

public class ClassModel extends MyRect {
	private static final long serialVersionUID = 1L;
	boolean abstractEl;
	boolean staticEl;
	boolean finalEl;

	public boolean isAbstractEl() {
		return abstractEl;
	}

	public void setAbstractEl(boolean abstractEl) {
		this.abstractEl = abstractEl;
	}

	public boolean isStaticEl() {
		return staticEl;
	}

	public void setStaticEl(boolean staticEl) {
		this.staticEl = staticEl;
	}

	public boolean isFinaltEl() {
		return finalEl;
	}

	public void setFinaltEl(boolean finaltEl) {
		this.finalEl = finaltEl;
	}

	public ClassModel(GraphDocument parent) {
		super(parent);
		initProperties();
	}

	public ClassModel(GraphDocument parent, Point2D position, Dimension dimension) {
		super(parent, position, dimension);
		initProperties();
	}

	public ClassModel(GraphDocument parent, Point2D position, Dimension dimension, String name) {
		super(parent, position, dimension, name);
		initProperties();
	}

	private void initProperties() {
		Property methods = new Property("methods");
		methods.setValue(new GMethods());
		Property attributes = new Property("attributes");
		attributes.setValue(new GAttributes());
		abstractEl = false;
		staticEl = false;
		finalEl = false;
		super.addProperties(attributes);
		super.addProperties(methods);
	}

	
}
